Razeni v ListView

Otázka od: Vymazal Milan

9. 9. 2002 14:32

Zdravim

radim jednotlive sloupecky tabulky v Listview pomoci teto funkce.


function CustomSortProc1(Item1, Item2: TListItem; ParamSort: integer): integer;
stdcall;
begin
  
Result:=lstrcmp(PChar(TListItem(Item1).Caption),PChar(TListItem(Item2).Caption));
end;

Ale pokud mam napriklad seradit cisla 1..1000 tak mi to udela uplne
tak jak to nechci vysledek je neco v tomto stylu

1
10
11
12
13
...

no to je sice spravne ale pouze pro string. jak to mam redit jako
string ?

dik milan

Odpovedá: Roman

9. 9. 2002 19:21

> radim jednotlive sloupecky tabulky v Listview pomoci teto funkce.
> function CustomSortProc1(Item1, Item2: TListItem; ParamSort: integer):
integer; stdcall;
> begin
>
Result:=lstrcmp(PChar(TListItem(Item1).Caption),PChar(TListItem(Item2).Capti
on));
> end;
> no to je sice spravne ale pouze pro string. jak to mam redit jako
> string ?

try
  c1:=StrToInt(Item1.Caption);
  c2:=StrToInt(Item2.Caption);
  if c1>c2 then result:=1 else
  if c1<c2 then result:=-1 else result:=0;
except

Result:=lstrcmp(PChar(TListItem(Item1).Caption),PChar(TListItem(Item2).Capti
on));
end;

anebo bez try...except pomoci StrToIntDef.

Roman
==============================
http://kouzelne.misto.cz